/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package presenter;

import boundary.AddAgenciaView;
import collection.CollectionAgencia;
import entity.Agencia;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JOptionPane;

/**
 *
 * @author jakson
 */
public class AddAgenciaPresenter {

    private AddAgenciaView view; 
    private collection.CollectionAgencia agencia;
    
    public AddAgenciaPresenter(String editar, Agencia a) {
        view = new AddAgenciaView(null, true);
        agencia = new CollectionAgencia();
       
        if(editar.equals("editar")){
            
            view.setTitle("Editar Agência");
            carregarTelaEditar(a);
            
            
            
        }
        
        view.getBtnFechar().addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent ae) {
                fechar();
            }
        });
        
        view.getBtnSalvar().addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent ae ) {
                salvar();
            }
        } );
        
        view.setLocationRelativeTo(view);
        view.setVisible(true);
    }
    
    
    private void fechar(){
        view.dispose();
        
    }
    
    private void limparCampos(){
        view.getCodigo().setText("");
        view.getCidade().setText("");
    }
    
    private void salvar(){
    try{ 
        Agencia ag = new Agencia(view.getCodigo().getText(), view.getCidade().getText(),view.getCombox().getSelectedItem().toString());
        collection.CollectionAgencia incluir = new collection.CollectionAgencia();
        if(view.getCodigo().getText().isEmpty()) {
                throw new Exception(" CAMPO  CÓDIGO VAZIO ");
        } else if(view.getCidade().getText().isEmpty() ){
                throw new Exception("CAMPO CIDADE VAZIO");
        }else{
               incluir.incluirAgencia(ag);
               
               
               JOptionPane.showMessageDialog(null, "CADASTRO REALIZADO COM SUCESSO");
               limparCampos();
        }
        
        } catch (Exception e) {
            JOptionPane.showMessageDialog(view, e.getMessage());
        }
    
    }
    
    private void carregarTelaEditar(Agencia a){
        
        view.getCodigo().setText(a.getCodigo());
        view.getCidade().setText(a.getCidade());
        view.getCombox().setSelectedItem(a.getUf());
        
        
       
    }
}
    
